package cn.sc.summer.mybatis.table.event;

import cn.sc.summer.mybatis.model.TableUpdateInfo;
import cn.sc.summer.mybatis.model.TableXInfo;
import cn.sc.summer.mybatis.table.base.Table;

import java.util.List;

/**
 * 接口：更新表结构接口
 *
 * @author a-xin
 * @date 2024/8/28 10:44
 */
public interface TableEvent extends Table {

    /**
     * 更新表信息
     *
     * @param tableBaseXInfo 表数据信息
     */
    void updateTable(List<? extends TableUpdateInfo> tableBaseXInfo);

    /**
     * 新增表信息
     *
     * @param tableBaseXInfo 表数据信息
     */
    void addTable(List<? extends TableXInfo> tableBaseXInfo);

    /**
     * 删除表信息
     *
     * @param tableNames 表名称
     */
    void delTable(List<String> tableNames);

}
